/**
 * **url参数封装(可添加多个)；支持中文字符串传参，输出base-64编码字符串**
 * @param {Json} [datas={}] - url参数
 * @param {String} [url=''] - 需要拼接的域名
 * @returns 返回参数组合，如：name='tom'&age=18
 * 
 * @example
 *
 * ```js
 * urlParamAdd({
 *    name:'tom',
 *    age:18
 * })
 * 
 * //return bmFtZSUzRCVFNSVCQyVBMCVFNCVCOCU4OSUyNmFnZSUzRDIw
 * ```
 * @example
 *
 * ```js
 * * urlParamAdd({
 *    name:'tom',
 *    age:18
 * },'http://localhost:8080')
 * 
 * //return http://localhost:8080?bmFtZSUzRCVFNSVCQyVBMCVFNCVCOCU4OSUyNmFnZSUzRDIw
 * ```
 * 
 */
const urlParamAdd=(datas={},url='')=>{
   let urlData='';
   for(let name in datas){
       urlData+=`${name}=${datas[name]}&`;
   };
   urlData = urlData.substring(0,urlData.length-1)

   // 特殊字符及中文字符串编译    
   urlData=encodeURIComponent(urlData);
   // base64编译
   urlData=window.btoa(urlData);

   // 如果传入域名返回拼接    
   if(url!=''){
       urlData=`${url}?${urlData}`;
   }
   return urlData;
}

export default urlParamAdd;